from case.po.basePage.base_page import BasePage
from selenium import webdriver
from selenium.webdriver.common.by import By

'''
登录页面对象 实现系统登录
继承BasePage, 拥有BasePage下的所有方法
主要包含两部分： 页面元素 ， 元素的操作流
'''
class LoginPage(BasePage):

    #1. 页面元素
    url="https://afterwin.cn/login"
    login_name=(By.ID,"userName")   #通过元祖的形式进行管理
    login_password=(By.ID,"passWord")
    login_button=(By.CSS_SELECTOR,"button[type='submit']")

    #2. 元素的操作流
    # 对用户名框进行内容的输入
    def input_username(self, username):
        self.locator(self.login_name).send_keys(username)

    # 对密码框进行内容的输入
    def input_password(self, password):
        self.locator(self.login_password).send_keys(password)

    # 点击登录按钮，实现登录
    def click_login_element(self):
        self.locator(self.login_button).click()

    def login(self,username,password):
        #访问url
        self.visit(self.url)
        #输入账号
        self.input_username(username)
        #输入密码
        self.input_password(password)
        #点击登录按钮
        self.click_login_element()


if __name__ =="__main__":
    driver =webdriver.Chrome()
    #实例化登录页， 要传入一个driver
    sp = LoginPage(driver)
    sp.login("fandanping","fandanping521")
